VS Code Notes

Must Watch!

MustWatch
VS Code Tips and Tricks Introductory Videos . VS Code Community . VS Code macros . Visual Studio Code Key Bindings . tips and tricks . VS Code Snippets . Creating snippets . theme-color-reference . 在VSCode 中配置R 语言运行环境 . Visual studio code上設定R語言的開發環境 . vscode tasks
Hide tabs section
"workbench.editor.showTabs": false

Set editorLineNumber color
"workbench.colorCustomizations": { "editorLineNumber.foreground": "#999999"}

{
    "liveServer.settings.AdvanceCustomBrowserCmdLine: ": "Null",
    "liveServer.settings.CustomBrowser": "C:\\Program Files (x86)\\Google\\Chrome\\Application\\chrome.exe",
    "liveServer.settings.NoBrowser": false,
    "window.zoomLevel": 1,
    "liveServer.settings.donotShowInfoMsg": true,
    "liveServer.settings.port":5500,
    "activitusbar.views":{
        "activitusbar.activeColour": "#200000"
    },
    "workbench.colorCustomizations": {
        "editorLineNumber.foreground": "#404020",
        "activityBar.background": "#001000",
        "editorBracketMatch.border": "#204020",
        "editor.foreground": "#708080",
        "editor.background": "#000000",
        "editor.selectionHighlightBackground": "#002000",
        "editor.selectionBackground": "#602020",
      },
    "editor.minimap.enabled": false,
    "workbench.editor.showTabs": false,
    "workbench.activityBar.visible": false,
    "files.autoGuessEncoding": true,
    "files.defaultLanguage": "utf8",
    "workbench.iconTheme": "vscode-icons",
    "window.menuBarVisibility": "toggle",
    "editor.renderIndentGuides": false,
    "explorer.confirmDelete": false,
    "editor.lineHeight": 26,
    "editor.fontSize": 22

}

vs code extention

vs code extention spotlight Draw.io Integration marketplace.visualstudio The Net Ninja

VScode Settings

♦VScode Settings "editor.rulers": [80,120] In addition to global "editor.rulers" setting, it's also possible to set this on a per-language level. "[python]": {"editor.rulers": [79,120]} "editor.wordWrap": "wordWrapColumn", "editor.wordWrapColumn": 80,

Emmet

emmet Using Tab for Emmet expansions If you want to use the Tab key for expanding the Emmet abbreviations, add the following settings: "emmet.triggerExpansionOnTab": true This setting allows using the Tab key for indentation when text is not an Emmet abbreviation. Emmet when quickSuggestions are disabled If you have disabled the editor.quickSuggestions setting, you won't see suggestions as you type. You can still trigger suggestions manually by pressing Ctrl+Space and see the preview. Disable Emmet in suggestions If you don't want to see Emmet abbreviations in suggestions at all, then use the following setting: "emmet.showExpandedAbbreviation": "never" You can still use the command Emmet: Expand Abbreviation to expand your abbreviations. You can also bind any keyboard shortcut to the command id editor.emmet.action.expandAbbreviation as well.

useful extensions

vscode-icons css peek guides rainbow brackets beautify live server https://ritwickdey.github.io/vscode-live-server/docs/settings.html code runner path Intellicense htmltagwrap auto rename tag Bookmarks

Keyboard shortcuts keybindings.json:

♦VS Code Key Bindings // Place your key bindings in this file to overwrite the defaults [ {"key": "ctrl+alt+w", "command": "editor.action.toggleWordWrap"}, {"key": "alt+z", "command": "-editor.action.toggleWordWrap"}, {"key": "f7", "command": "sortLines.sortLinesUnique"}, {"key": "alt+f7", "command": "editor.action.diffReview.next", "when": "isInDiffEditor"}, {"key": "f7", "command": "-editor.action.diffReview.next", "when": "isInDiffEditor"}, {"key": "ctrl+f7", "command": "editor.action.wordHighlight.next", "when": "editorTextFocus && hasWordHighlights"}, {"key": "f7", "command": "-editor.action.wordHighlight.next", "when": "editorTextFocus && hasWordHighlights"}, {"key": "alt+m", "command": "editor.action.toggleMinimap"}, {"key": "ctrl+alt+m", "command": "workbench.action.toggleMenuBar"}, {"key": "f8", "command": "permute-lines.unique"}, {"key": "alt+f8", "command": "editor.action.marker.nextInFiles", "when": "editorFocus && !editorReadonly"}, {"key": "f8", "command": "-editor.action.marker.nextInFiles", "when": "editorFocus && !editorReadonly"}, {"key": "ctrl+alt+f3", "command": "editor.action.dirtydiff.next", "when": "editorTextFocus"}, {"key": "alt+f3", "command": "-editor.action.dirtydiff.next", "when": "editorTextFocus"}, {"key": "ctrl+f2", "command": "bookmarks.toggle", "when": "editorTextFocus"}, {"key": "ctrl+alt+k", "command": "-bookmarks.toggle", "when": "editorTextFocus"}, {"key": "ctrl+alt+f2", "command": "editor.action.changeAll", "when": "editorTextFocus && !editorReadonly"}, {"key": "ctrl+f2", "command": "-editor.action.changeAll", "when": "editorTextFocus && !editorReadonly"}, {"key": "f2", "command": "bookmarks.jumpToNext", "when": "editorTextFocus"}, {"key": "ctrl+alt+l", "command": "-bookmarks.jumpToNext", "when": "editorTextFocus"}, {"key": "alt+f2", "command": "renameFile", "when": "explorerViewletVisible && filesExplorerFocus && !explorerResourceIsRoot && !explorerResourceReadonly && !inputFocus"}, {"key": "f2", "command": "-renameFile", "when": "explorerViewletVisible && filesExplorerFocus && !explorerResourceIsRoot && !explorerResourceReadonly && !inputFocus"}, {"key": "ctrl+k ctrl+f2", "command": "debug.setVariable", "when": "variablesFocused"}, {"key": "f2", "command": "-debug.setVariable", "when": "variablesFocused"}, {"key": "ctrl+k ctrl+alt+f2", "command": "debug.renameWatchExpression", "when": "watchExpressionsFocused"}, {"key": "f2", "command": "-debug.renameWatchExpression", "when": "watchExpressionsFocused"}, {"key": "ctrl+shift+f2", "command": "editor.action.rename", "when": "editorHasRenameProvider && editorTextFocus && !editorReadonly"}, {"key": "f2", "command": "-editor.action.rename", "when": "editorHasRenameProvider && editorTextFocus && !editorReadonly"}, {"key": "alt+f3", "command": "editor.action.selectHighlights", "when": "editorFocus"}, {"key": "ctrl+shift+l", "command": "-editor.action.selectHighlights", "when": "editorFocus"} ]

Multi-word selection:

Ctrl+Shift+L selects all instances of the current highlighted word Ctrl+D selects the next instance... and the one after that... etc.

Visual Studio Code Tips

8 Visual Studio Code Tips Productivity Tips for Visual Studio Code TextMate power of snippets Creating your own Snippets Interpolated Shell Code in Snippets Create macros

Create Custom Macros

macros adding them to your settings.json (Code|File > Preferences > User Settings) For example: "macros": { "commentDown": [ "editor.action.copyLinesDownAction", "cursorUp", "editor.action.addCommentLine", "cursorDown" ] } This macro creates a copy of the current line, comments out the original line, and moves the cursor down to the copy. Your macros can run any built-in VS Code action, and even actions from other extensions. To see all the names of possible actions VS Code can run, see Default Keyboard Shortcuts (Code|File > Preferences > Keyboard Shortcuts) Give your macros names that briefly describe what they do. Add Keybindings to Run your Macros in keybindings.json (Code|File > Preferences > Keyboard Shortcuts) add bindings to your macros: { "key": "ctrl+cmd+/", "command": "macros.commentDown" } Notice that macros.my_macro_name has to match what you named your macro. Passing Arguments to Commands Many commands accept arguments, like the "type" command which lets you insert text into the editor. For these cases use an object instead of a string when specifying the command to call in your settings.json: "macros": { "addSemicolon": [ "cursorEnd", {"command": "type", "args": {"text": ";"}} ] } Executing Snippets as part of a Macro Macros can also execute any of your snippets which is super neat. Just insert the same text that you would normally type for the snippet, followed by the insertSnippet command: "macros": { "doMySnippet": [ {"command": "type", "args": {"text": "mySnippetPrefixHere"}}, "insertSnippet" ] } So for example I have a JavaScript snippet for logging an object (javascript.json): { "Print object to console": { "prefix": "con", "body": [ "console.log('$1', $1);$2" ], "description": "console.log an object" } } And I have a macro that will select the word at my cursor, copy it, drop to a new line, and run that snippet to log the variable: editor.action.addSelectionToNextFindMatch "macros": { "logCurrentVariable": [ "editor.action.addSelectionToNextFindMatch", "problems.action.copy", {"command": "type", "args": {"text": "con"}} ] }

Make Vscode Line Number Field Smaller

Make Vscode Line Number Field Smaller Actually there are three columns: left of the linenumber is the column called glyphMargin, the place to set debugging breakpoints (red dot).. the line number itself right of it you can fold/unfold your code. To save space you can switch off the display of line numbers: "editor.lineNumbers": "off" switch off the code folding feature: "editor.folding": false enter image description here if you don't use the debugger, disable the glyphMargin: "editor.glyphMargin": false This is probably not what you want, but if you don't use code folding or the debugger or don't need linenumbers, you can at least save a little bit of space. To change these settings press ctrl, or click on the menu file/preferences/settings.

telemetry.enableTelemetry

"telemetry.enableTelemetry": false

Integrated Terminal

♦Integrated Terminal

Run Python from VSCode

♦Run Python from VSCode

vscode for windows 7 multi instances of rg.exe

D:\KPC\Microsoft VS Code\resources\app\node_modules.asar.unpacked\vscode-ripgrep\bin\rg.exe create exe doing nothing by using c

Visual Studio Commands

Using Regular Expressions In Visual Studio Command Window Visual Studio Commands Command Window & VS Commands, not for VS Code

JavaScript VSCode Extensions

JavaScript VSCode Extensions

Vscode Bookmarks

Vscode Bookmarks

Vscode User Interface

Vscode User Interface

VS Code 中文显示乱码

VS Code 中文显示乱码

VS Code Extensions

15 VS Code Extensions

Python in VS Code

Python in VS Code Python in VSCode

run r in vscode

install.packages("languageserver") Language Server Protocol: Adding features like auto complete, go to definition, or documentation on hover for a programming language takes significant effort. pip install radian D:\Python36-32\Scripts\radian.exe r.rterm.windows r.rpath.lsp "r.rpath.lsp": "D:/R-3.4.3/bin/", { "r.rterm.mac": "/Users//anaconda3/bin/rtichoke", "r.rpath.lsp": "/usr/local/bin/R", "r.rterm.option": [ // "--no-save", // "--no-restore", "--no-site-file" ] } 注:VSCode 经典的设置采用JSON 模式,但目前推出了图形界面的设置。 如果你不知道如何进行设置可以参照微软的文档 Bonus: 设置快捷键 R 语言有一些非常讨人厌的特性,比如赋值符号是<-。 用两个字符赋值已经够繁琐了,按< 还需要去按Shift,搞不好下一个就按成_。 RStudio 通过快捷键⌥ - 来输入它,我们可以通过VSCode 可以灵活自定义快捷键的特点,自己完成这一特性的实现。 打开快捷键设置(默认为⌘+K ⌘+S)并转到搜索框下的keybindings.json,在右侧的自定义快捷键部分追加如下的设置: { "key": "alt+-", "command": "type", "args": { "text": " <- " }, "when": "editorTextFocus" } 这项设置非常好懂,key 为快捷键(加号仅作为连接符);command为命令,这里为type即输入;args 为参数,这里是输入的内容,即写在类型text 之后的<-;when是规定了快捷键何时生效,这里规定为editorTextFocus,即当编辑器成为焦点时。 使用 <- 的快捷键 以此类推,可以为%>%等常用符号添加快捷键。 更多VSCode 的快捷键设置可以参考微软的官方文档,通过自定义快捷键让VSCode 更加得心应手。

使用 VSCode 編譯並執行 C/C++

C:\mingw-w64\i686-8.1.0-posix-dwarf-rt_v6-rev0\mingw32\bin; 使用 VSCode 編譯並執行 C/C++

VSCode 快捷键

1、一次搜索所有文件的文本 Windows: Ctrl + Shift + F VSCode中我最喜欢的特性之一是能够在项目目录中的所有文件中搜索任何匹配的文本。 要使用此特性,可以按 Ctrl + Shift + f 打开视图,它将显示编辑器左侧的侧边栏: 输入查找的內容并回车,VS code 将提供与输入内容匹配的结果列表,如下所示: 你还可以同时规制每个搜索果文件中的所有匹配内容。 如果你单击左边的这个小箭头,它将在下面弹出第二个输入框,可以在这里输入要替换的文本,同时单击右边出现的小框: 2、为 tabs 设置强调色 (Material Theme) 你是否厌倦了每天看到相同的 tabs 底部颜色?可以使用 Material Theme 来扩展 VsCode 的主题,这样就可以为 tabs 设置不同的颜色。 红色: 紫色: 黄色: 有16种不同的颜色可供选择。 因此,如果胸有安装此扩展,打开的命令面板(Ctrl + Shift + P),选择 Material Theme: Set accent color 并从列表中选择一个颜色,它将更改选项卡的下划线颜色,如下所示 3、进程资源管理器 你是否发现你的VsCode 编辑器有时有点慢?这时候你希望哪个进程在吃我们的内存? 好吧,如果你还不知道,VsCode 有一个进程资源管理器功能,如下所示: 是不是看起来很熟悉? 在 windows 任务管理器中看到过这一点,在VsCode 中按 Ctrl + Alt + Delete可以打开该任务管理器。 4、Expand Bracket Selection 打开键盘快捷键,搜索 Expand Bracket Selection。 这是我需要花费一些时间才能发现的,因为我无法猜出该功能的名称。 使用此功能可以自动选择整个块,从开始的大括号到结束。 我发现这个功能在想要找到 if/else 对应的结束块很有用。 5、重新打开 关闭的编辑页面 Windows: Ctrl + Shift + T 当你处理一个文件很多的大型项目时,如果不小心关闭了一个页面,并且不得不在侧菜单中再次搜索它,这可能会有点令人沮丧。 现在,可以按 Ctrl + Shift + T 重新打开一个关闭的页面。 6、通过匹配文本打开文件 Windows: Ctrl + T 说到搜索文件,你可以动态地搜索和打开文件。 这是我最喜欢的特性之一,因为不需要手动单击目录来重新打开一个不再打开的文件。 7、集成终端 Windows: Ctrl + ` 通过 Ctrl + ` 可以打开或关闭终端 8、查看正在运行插件 你可以通过打开命令面板并输入 Show running extensions 来查看所有你安装的正在运行的插件。 9、重新加载 我个人认为这是 VsCode 最酷的特性之一。 它允许你在重新加载编辑器时将窗口放在前面,同时具有与关闭和重新打开窗口相同的效果。 Windows: Ctrl + Alt + R 10、将选项卡交换到不同的组 在我开发的过程中,我习惯在错误的选项卡组中使用选项卡。 我也希望避免尽可能多地使用我的鼠标来解决问题,因为这会让我把手从键盘上抬起来,我很懒,手一起想放键盘上。 幸运的是,VsCode 有一种方法可以通过按 Ctrl + Alt +右箭头 将标签移动到右侧的组,或者按 Ctrl + Alt + 左箭头 将标签转移到单独的标签组 将标签移动到左侧的组: 11、选择左侧/右侧的所有内容 有时你想要删除光标右侧或左侧的所有内容。 你可以选择光标右侧或左侧的所有内容。 例如,要选择右侧或左侧的所有内容: Windows: Ctrl + Shift + Home/End fn键+左方向键是HOME fn键+右方向键是END fn+上方向键是page up fn+下方向键是page down 12、删除上一个单词 要删除前一个单词,可以按 Ctrl + Backspace 这在你打错字的时候非常有用。 你可以在 VsCode 之外的任何地方使用它。 13、启动性能 有时候,缺乏关于性能问题的详细信息是一件非常痛苦的事情,同时还要找出哪些有性能问题。 有时候,如果你足够幸运,你会找到一个工具,它能给你所有的答案。 在VsCode 中,启动性能是很重要的。 这就是为什么你能弹出一个有用的窗口,奇迹般地提供所有你需要的信息: 打开命令面板(),搜索Startup Performance 14、逐个选择文本 可以通过快捷键 Ctrl + Shift +右箭头 和 Ctrl + Shift +左箭头 逐个选择文本。 15、重复的行 一个非常强大和已知的功能是复制行。 只需按 Shift + Alt + 向下箭头 16、移至文件的开头/结尾 要使光标移到文件的第一行或最后一行,最快的方法是按 Ctrl + Home 键开头,然后按 Ctrl + End 键结尾。 17、批量替换当前文件中所有匹配的文本 可以选择任何一组文本,如果该选中文本出现多个,可以通过按 Ctrl + F2 一次改所有出现的文本。 18、向上/向下移动一行 按 Alt + 向上箭头 当前行向上移动,按 Alt + 向下箭头 当前行向下移动。 19、删除一行 有两种方法可以立即删除一行。 使用Ctrl + X 剪切命令来删除一行。 或者使用 Ctrl + Shift + K 命令。 20、将编辑器向左或向右移动 如果你像我一样,你可能会有一种无法控制的欲望,想要在一个组中重新排列选项卡,其中选项卡相互关联,左边的选项卡是比较重要文件,而右边的选项卡是相对不重要的文件。 通过 Ctrl+Shift+PgUp/PgDown 向左/向右移动编辑器。 21、复制光标向上或者向上批量添加内容 在 VsCode 中复制游标可以证明是最节省时间的特性。 Ctrl + Alt +向上箭头 将光标添加到上面,按 Ctrl + Alt +向下箭头 将光标添加到下面。', j - list.focusDown when": "notebookEditorFocused && !inputFocus k - list.focusUp when": "notebookEditorFocused && !inputFocus left - list.collapse when": "listFocus && !inputFocus right - list.expand when": "listFocus && !inputFocus shift+down - list.expandSelectionDown when": "listFocus && listSupportsMultiselect && !inputFocus shift+up - list.expandSelectionUp when": "listFocus && listSupportsMultiselect && !inputFocus space - list.toggleExpand when": "listFocus && !inputFocus alt+enter - debug.openBreakpointToSide when": "breakpointsFocused ctrl+enter - debug.openBreakpointToSide when": "breakpointsFocused delete - debug.removeBreakpoint when": "breakpointsFocused && !breakpointSelected f2 - debug.renameWatchExpression when": "watchExpressionsFocused f2 - debug.setVariable when": "variablesFocused space - debug.toggleBreakpoint when": "breakpointsFocused && !inputFocus ctrl+end - cursorBottom when": "textInputFocus ctrl+home - cursorTop when": "textInputFocus ctrl+left - cursorWordStartLeft when": "textInputFocus ctrl+right - cursorWordEndRight when": "textInputFocus ctrl+shift+alt+down - cursorColumnSelectDown when": "textInputFocus ctrl+shift+alt+left - cursorColumnSelectLeft when": "textInputFocus ctrl+shift+alt+pagedown - cursorColumnSelectPageDown when": "textInputFocus ctrl+shift+alt+pageup - cursorColumnSelectPageUp when": "textInputFocus ctrl+shift+alt+right - cursorColumnSelectRight when": "textInputFocus ctrl+shift+alt+up - cursorColumnSelectUp when": "textInputFocus ctrl+shift+down - cursorDownSelect when": "textInputFocus ctrl+shift+end - cursorBottomSelect when": "textInputFocus ctrl+shift+home - cursorTopSelect when": "textInputFocus ctrl+shift+left - cursorWordStartLeftSelect when": "textInputFocus ctrl+shift+right - cursorWordEndRightSelect when": "textInputFocus ctrl+shift+up - cursorUpSelect when": "textInputFocus ctrl+u - cursorUndo when": "textInputFocus down - cursorDown when": "textInputFocus end - cursorEnd when": "textInputFocus home - cursorHome when": "textInputFocus left - cursorLeft when": "textInputFocus pagedown - cursorPageDown when": "textInputFocus pageup - cursorPageUp when": "textInputFocus right - cursorRight when": "textInputFocus shift+down - cursorDownSelect when": "textInputFocus shift+end - cursorEndSelect when": "textInputFocus shift+home - cursorHomeSelect when": "textInputFocus shift+left - cursorLeftSelect when": "textInputFocus shift+pagedown - cursorPageDownSelect when": "textInputFocus shift+pageup - cursorPageUpSelect when": "textInputFocus shift+right - cursorRightSelect when": "textInputFocus shift+up - cursorUpSelect when": "textInputFocus up - cursorUp when": "textInputFocus ctrl+shift+. - breadcrumbs.focusAndSelect when": "breadcrumbsVisible ctrl+shift+; - breadcrumbs.focus when": "breadcrumbsVisible alt+down - editor.action.moveLinesDownAction when": "editorTextFocus && !editorReadonly alt+enter - editor.action.selectAllMatches when": "editorFocus && findWidgetVisible alt+f1 - editor.action.showAccessibilityHelp when": "editorFocus alt+f12 - editor.action.previewDeclaration when": "editorHasDefinitionProvider && editorTextFocus && !inReferenceSearchEditor && !isInEmbeddedEditor alt+f3 - editor.action.dirtydiff.next when": "editorTextFocus alt+up - editor.action.moveLinesUpAction when": "editorTextFocus && !editorReadonly alt+z - editor.action.toggleWordWrap ctrl+. - editor.action.quickFix when": "editorHasCodeActionsProvider && editorTextFocus && !editorReadonly ctrl+/ - editor.action.commentLine when": "editorTextFocus && !editorReadonly ctrl+[ - editor.action.outdentLines when": "editorTextFocus && !editorReadonly ctrl+] - editor.action.indentLines when": "editorTextFocus && !editorReadonly ctrl+a - editor.action.selectAll when": "textInputFocus ctrl+a - editor.action.webvieweditor.selectAll when": "webviewEditorFocus ctrl+alt+down - editor.action.insertCursorBelow when": "editorTextFocus ctrl+alt+enter - editor.action.replaceAll when": "editorFocus && findWidgetVisible ctrl+alt+up - editor.action.insertCursorAbove when": "editorTextFocus ctrl+c - editor.action.clipboardCopyAction when": "textInputFocus ctrl+d - editor.action.addSelectionToNextFindMatch when": "editorFocus ctrl+enter - editor.action.insertLineAfter when": "editorTextFocus && !editorReadonly ctrl+f - editor.action.extensioneditor.showfind when": "extensionEditorWebviewFocus ctrl+f - editor.action.webvieweditor.showFind when": "webviewEditorFocus ctrl+f12 - editor.action.goToImplementation when": "editorHasImplementationProvider && editorTextFocus && !isInEmbeddedEditor ctrl+f2 - editor.action.changeAll when": "editorTextFocus && !editorReadonly ctrl+f3 - editor.action.nextSelectionMatchFindAction when": "editorFocus ctrl+h - editor.action.startFindReplaceAction ctrl+insert - editor.action.clipboardCopyAction when": "textInputFocus ctrl+k ctrl+c - editor.action.addCommentLine when": "editorTextFocus && !editorReadonly ctrl+k ctrl+d - editor.action.moveSelectionToNextFindMatch when": "editorFocus ctrl+k ctrl+f - editor.action.formatSelection when": "editorHasSelection && editorTextFocus && !editorReadonly ctrl+k ctrl+i - editor.action.showHover when": "editorTextFocus ctrl+k ctrl+k - editor.action.defineKeybinding when": "editorTextFocus && !editorReadonly && editorLangId == 'jsonc' ctrl+k ctrl+u - editor.action.removeCommentLine when": "editorTextFocus && !editorReadonly ctrl+k ctrl+x - editor.action.trimTrailingWhitespace when": "editorTextFocus && !editorReadonly ctrl+k f12 - editor.action.openDeclarationToTheSide when": "editorHasDefinitionProvider && editorTextFocus && !isInEmbeddedEditor ctrl+m - editor.action.toggleTabFocusMode ctrl+shift+, - editor.action.inPlaceReplace.up when": "editorTextFocus && !editorReadonly ctrl+shift+. - editor.action.inPlaceReplace.down when": "editorTextFocus && !editorReadonly ctrl+shift+1 - editor.action.replaceOne when": "editorFocus && findWidgetVisible ctrl+shift+\\ - editor.action.jumpToBracket when": "editorTextFocus ctrl+shift+enter - editor.action.insertLineBefore when": "editorTextFocus && !editorReadonly ctrl+shift+f12 - editor.action.peekImplementation when": "editorHasImplementationProvider && editorTextFocus && !isInEmbeddedEditor ctrl+shift+f3 - editor.action.previousSelectionMatchFindAction when": "editorFocus ctrl+shift+k - editor.action.deleteLines when": "textInputFocus && !editorReadonly ctrl+shift+l - editor.action.selectHighlights when": "editorFocus ctrl+shift+r - editor.action.refactor when": "editorHasCodeActionsProvider && editorTextFocus && !editorReadonly ctrl+shift+space - editor.action.triggerParameterHints when": "editorHasSignatureHelpProvider && editorTextFocus ctrl+space - editor.action.triggerSuggest when": "editorHasCompletionItemProvider && textInputFocus && !editorReadonly ctrl+v - editor.action.clipboardPasteAction when": "textInputFocus && !editorReadonly ctrl+x - editor.action.clipboardCutAction when": "textInputFocus && !editorReadonly escape - editor.action.webvieweditor.hideFind when": "webviewEditorFocus && webviewFindWidgetVisible f12 - editor.action.goToDeclaration when": "editorHasDefinitionProvider && editorTextFocus && !isInEmbeddedEditor f2 - editor.action.rename when": "editorHasRenameProvider && editorTextFocus && !editorReadonly f3 - editor.action.nextMatchFindAction when": "editorFocus f7 - editor.action.diffReview.next when": "isInDiffEditor f7 - editor.action.wordHighlight.next when": "editorTextFocus && hasWordHighlights f8 - editor.action.marker.nextInFiles when": "editorFocus && !editorReadonly shift+alt+a - editor.action.blockComment when": "editorTextFocus && !editorReadonly shift+alt+down - editor.action.copyLinesDownAction when": "editorTextFocus && !editorReadonly shift+alt+f - editor.action.formatDocument when": "editorTextFocus && !editorReadonly shift+alt+f3 - editor.action.dirtydiff.previous when": "editorTextFocus shift+alt+i - editor.action.insertCursorAtEndOfEachLineSelected when": "editorTextFocus shift+alt+left - editor.action.smartSelect.shrink when": "editorTextFocus shift+alt+o - editor.action.organizeImports when": "editorTextFocus && !editorReadonly && supportedCodeAction =~ /(\\s|^)source\\.organizeImports\\b/ shift+alt+right - editor.action.smartSelect.grow when": "editorTextFocus shift+alt+up - editor.action.copyLinesUpAction when": "editorTextFocus && !editorReadonly shift+delete - editor.action.clipboardCutAction when": "textInputFocus && !editorReadonly shift+f10 - editor.action.showContextMenu when": "textInputFocus shift+f12 - editor.action.referenceSearch.trigger when": "editorHasReferenceProvider && editorTextFocus && !inReferenceSearchEditor && !isInEmbeddedEditor shift+f3 - editor.action.previousMatchFindAction when": "editorFocus shift+f7 - editor.action.diffReview.prev when": "isInDiffEditor shift+f7 - editor.action.wordHighlight.prev when": "editorTextFocus && hasWordHighlights shift+f8 - editor.action.marker.prevInFiles when": "editorFocus && !editorReadonly shift+insert - editor.action.clipboardPasteAction when": "textInputFocus && !editorReadonly alt+c - toggleFindCaseSensitive when": "editorFocus alt+c - toggleSearchCaseSensitive when": "searchInputBoxFocus && searchViewletVisible alt+down - showNextParameterHint when": "editorTextFocus && parameterHintsMultipleSignatures && parameterHintsVisible alt+l - toggleFindInSelection when": "editorFocus alt+pagedown - scrollPageDown when": "textInputFocus alt+pageup - scrollPageUp when": "textInputFocus alt+r - toggleFindRegex when": "editorFocus alt+r - toggleSearchRegex when": "searchInputBoxFocus && searchViewletVisible alt+up - showPrevParameterHint when": "editorTextFocus && parameterHintsMultipleSignatures && parameterHintsVisible alt+w - toggleFindWholeWord when": "editorFocus alt+w - toggleSearchWholeWord when": "searchInputBoxFocus && searchViewletVisible backspace - deleteLeft when": "textInputFocus && !editorReadonly ctrl+alt+space - toggleSuggestionFocus when": "suggestWidgetVisible && textInputFocus ctrl+backspace - deleteWordLeft when": "textInputFocus && !editorReadonly ctrl+c - problems.action.copy when": "problemFocus ctrl+delete - deleteWordRight when": "textInputFocus && !editorReadonly ctrl+down - scrollLineDown when": "textInputFocus ctrl+down - selectNextSuggestion when": "suggestWidgetMultipleSuggestions && suggestWidgetVisible && textInputFocus ctrl+enter - explorer.openToSide when": "explorerViewletFocus && explorerViewletVisible && !inputFocus ctrl+enter - openReferenceToSide when": "referenceSearchTreeFocused && referenceSearchVisible ctrl+enter - problems.action.openToSide when": "problemFocus ctrl+f - actions.find ctrl+i - expandLineSelection when": "textInputFocus ctrl+k c - workbench.files.action.compareWithClipboard ctrl+k ctrl+/ - editor.foldAllBlockComments when": "editorTextFocus ctrl+k ctrl+0 - editor.foldAll when": "editorTextFocus ctrl+k ctrl+1 - editor.foldLevel1 when": "editorTextFocus ctrl+k ctrl+2 - editor.foldLevel2 when": "editorTextFocus ctrl+k ctrl+3 - editor.foldLevel3 when": "editorTextFocus ctrl+k ctrl+4 - editor.foldLevel4 when": "editorTextFocus ctrl+k ctrl+5 - editor.foldLevel5 when": "editorTextFocus ctrl+k ctrl+6 - editor.foldLevel6 when": "editorTextFocus ctrl+k ctrl+7 - editor.foldLevel7 when": "editorTextFocus ctrl+k ctrl+8 - editor.foldAllMarkerRegions when": "editorTextFocus ctrl+k ctrl+9 - editor.unfoldAllMarkerRegions when": "editorTextFocus ctrl+k ctrl+[ - editor.foldRecursively when": "editorTextFocus ctrl+k ctrl+] - editor.unfoldRecursively when": "editorTextFocus ctrl+k ctrl+alt+c - copyRelativeFilePath when": "!editorFocus ctrl+k ctrl+i - editor.debug.action.showDebugHover when": "editorTextFocus && inDebugMode ctrl+k ctrl+j - editor.unfoldAll when": "editorTextFocus ctrl+k ctrl+m - workbench.extensions.action.showRecommendedKeymapExtensions ctrl+k d - workbench.files.action.compareWithSaved ctrl+k e - workbench.files.action.focusOpenEditorsView ctrl+k v - markdown.showPreviewToSide when": "editorLangId == 'markdown' ctrl+pagedown - selectNextPageSuggestion when": "suggestWidgetMultipleSuggestions && suggestWidgetVisible && textInputFocus ctrl+pageup - selectPrevPageSuggestion when": "suggestWidgetMultipleSuggestions && suggestWidgetVisible && textInputFocus ctrl+shift+[ - editor.fold when": "editorTextFocus ctrl+shift+] - editor.unfold when": "editorTextFocus ctrl+shift+d - workbench.view.debug ctrl+shift+e - workbench.view.explorer ctrl+shift+f - workbench.view.search when": "!searchViewletVisible ctrl+shift+g - workbench.view.scm ctrl+shift+v - markdown.showPreview when": "editorLangId == 'markdown' ctrl+shift+x - workbench.view.extensions ctrl+shift+y - workbench.debug.action.toggleRepl ctrl+shift+z - redo when": "textInputFocus && !editorReadonly ctrl+space - toggleSuggestionDetails when": "suggestWidgetVisible && textInputFocus ctrl+up - scrollLineUp when": "textInputFocus ctrl+up - selectPrevSuggestion when": "suggestWidgetMultipleSuggestions && suggestWidgetVisible && textInputFocus ctrl+y - redo when": "textInputFocus && !editorReadonly ctrl+z - undo when": "textInputFocus && !editorReadonly delete - deleteRight when": "textInputFocus && !editorReadonly delete - moveFileToTrash when": "explorerViewletVisible && filesExplorerFocus && !explorerResourceIsRoot && !explorerResourceReadonly && !inputFocus delete - notification.clear when": "notificationFocus down - outline.focusDownHighlighted when": "outlineFiltered && outlineFocused down - selectNextSuggestion when": "suggestWidgetMultipleSuggestions && suggestWidgetVisible && textInputFocus down - showNextParameterHint when": "editorTextFocus && parameterHintsMultipleSignatures && parameterHintsVisible enter - acceptRenameInput when": "editorFocus && renameInputVisible enter - acceptSelectedSuggestionOnEnter when": "acceptSuggestionOnEnter && suggestWidgetVisible && suggestionMakesTextEdit && textInputFocus enter - breakpointWidget.action.acceptInput when": "breakpointWidgetVisible && inBreakpointWidget enter - notification.toggle when": "notificationFocus enter - repl.action.acceptInput when": "inDebugRepl && textInputFocus escape - cancelRenameInput when": "editorFocus && renameInputVisible escape - cancelSelection when": "editorHasSelection && textInputFocus escape - hideSuggestWidget when": "suggestWidgetVisible && textInputFocus escape - leaveEditorMessage when": "messageVisible escape - leaveSnippet when": "editorTextFocus && inSnippetMode escape - removeSecondaryCursors when": "editorHasMultipleSelections && textInputFocus f2 - renameFile when": "explorerViewletVisible && filesExplorerFocus && !explorerResourceIsRoot && !explorerResourceReadonly && !inputFocus f4 - goToNextReference when": "referenceSearchVisible f4 - goToNextReferenceFromEmbeddedEditor when": "inReferenceSearchEditor f9 - editor.debug.action.toggleBreakpoint when": "editorTextFocus left - notification.collapse when": "notificationFocus pagedown - selectNextPageSuggestion when": "suggestWidgetMultipleSuggestions && suggestWidgetVisible && textInputFocus pageup - selectPrevPageSuggestion when": "suggestWidgetMultipleSuggestions && suggestWidgetVisible && textInputFocus right - notification.expand when": "notificationFocus right - repl.action.acceptSuggestion when": "inDebugRepl && suggestWidgetVisible && textInputFocus shift+alt+c - copyFilePath when": "!editorFocus shift+alt+r - revealFileInOS when": "!editorFocus shift+backspace - deleteLeft when": "textInputFocus && !editorReadonly shift+delete - deleteFile when": "explorerViewletVisible && filesExplorerFocus && !explorerResourceIsRoot && !explorerResourceReadonly && !inputFocus shift+escape - cancelRenameInput when": "editorFocus && renameInputVisible shift+escape - cancelSelection when": "editorHasSelection && textInputFocus shift+escape - closeAccessibilityHelp when": "accessibilityHelpWidgetVisible && editorFocus shift+escape - closeBreakpointWidget when": "breakpointWidgetVisible && textInputFocus shift+escape - closeDirtyDiff when": "dirtyDiffVisible shift+escape - closeFindWidget when": "editorFocus && findWidgetVisible shift+escape - closeMarkersNavigation when": "editorFocus && markersNavigationVisible shift+escape - closeParameterHints when": "editorTextFocus && parameterHintsVisible shift+escape - closeReferenceSearch when": "referenceSearchVisible && !config.editor.stablePeek shift+escape - closeReferenceSearchEditor when": "inReferenceSearchEditor && !config.editor.stablePeek shift+escape - closeReviewPanel when": "reviewPanelVisible shift+escape - hideSuggestWidget when": "suggestWidgetVisible && textInputFocus shift+escape - leaveSnippet when": "editorTextFocus && inSnippetMode shift+escape - removeSecondaryCursors when": "editorHasMultipleSelections && textInputFocus shift+f4 - goToPreviousReference when": "referenceSearchVisible shift+f4 - goToPreviousReferenceFromEmbeddedEditor when": "inReferenceSearchEditor shift+f9 - editor.debug.action.toggleInlineBreakpoint when": "editorTextFocus shift+tab - jumpToPrevSnippetPlaceholder when": "editorTextFocus && hasPrevTabstop && inSnippetMode shift+tab - outdent when": "editorTextFocus && !editorReadonly && !editorTabMovesFocus space - notification.toggle when": "notificationFocus tab - acceptSelectedSuggestion when": "suggestWidgetVisible && textInputFocus tab - editor.emmet.action.expandAbbreviation when": "config.emmet.triggerExpansionOnTab && editorTextFocus && !editorReadonly && !editorTabMovesFocus tab - insertSnippet when": "editorTextFocus && hasSnippetCompletions && !editorTabMovesFocus && !inSnippetMode tab - jumpToNextSnippetPlaceholder when": "editorTextFocus && hasNextTabstop && inSnippetMode tab - tab when": "editorTextFocus && !editorReadonly && !editorTabMovesFocus up - outline.focusUpHighlighted when": "outlineFiltered && outlineFocused up - selectPrevSuggestion when": "suggestWidgetMultipleSuggestions && suggestWidgetVisible && textInputFocus up - showPrevParameterHint when": "editorTextFocus && parameterHintsMultipleSignatures && parameterHintsVisible z - undo when": "notebookEditorFocused && !inputFocus alt+down - workbench.action.terminal.focusNextPane when": "terminalFocus alt+f5 - workbench.action.editor.nextChange when": "editorTextFocus alt+left - workbench.action.navigateBack alt+left - workbench.action.quickInputBack when": "inQuickOpen alt+left - workbench.action.terminal.focusPreviousPane when": "terminalFocus alt+right - workbench.action.navigateForward alt+right - workbench.action.terminal.focusNextPane when": "terminalFocus alt+up - workbench.action.terminal.focusPreviousPane when": "terminalFocus ctrl+, - workbench.action.openSettings ctrl+- - workbench.action.zoomOut ctrl+9 - workbench.action.lastEditorInGroup ctrl+= - workbench.action.zoomIn ctrl+\\ - workbench.action.splitEditor ctrl+\\ - workbench.action.terminal.split when": "terminalFocus ctrl+` - workbench.action.terminal.toggleTerminal ctrl+alt+left - workbench.action.moveEditorToPreviousGroup ctrl+alt+pagedown - workbench.action.terminal.scrollDown when": "terminalFocus ctrl+alt+pageup - workbench.action.terminal.scrollUp when": "terminalFocus ctrl+alt+right - workbench.action.moveEditorToNextGroup ctrl+b - workbench.action.toggleSidebarVisibility ctrl+backspace - workbench.action.terminal.deleteWordLeft when": "terminalFocus ctrl+c - workbench.action.terminal.copySelection when": "terminalFocus && terminalTextSelected ctrl+delete - workbench.action.terminal.deleteWordRight when": "terminalFocus ctrl+e - workbench.action.quickOpen ctrl+e - workbench.action.quickOpenNavigateNextInFilePicker when": "inFilesPicker && inQuickOpen ctrl+end - workbench.action.terminal.scrollToBottom when": "terminalFocus ctrl+f - workbench.action.terminal.focusFindWidget when": "terminalFocus ctrl+f4 - workbench.action.closeActiveEditor ctrl+f4 - workbench.action.closeGroup when": "activeEditorGroupEmpty && multipleEditorGroups ctrl+f5 - workbench.action.debug.run when": "!inDebugMode ctrl+g - workbench.action.gotoLine ctrl+home - workbench.action.terminal.scrollToTop when": "terminalFocus ctrl+j - workbench.action.togglePanel ctrl+k - workbench.action.terminal.clear when": "terminalFocus ctrl+k ctrl+\\ - workbench.action.splitEditorOrthogonal ctrl+k ctrl+o - workbench.action.files.openFolder ctrl+k ctrl+p - workbench.action.showAllEditors ctrl+k ctrl+r - workbench.action.keybindingsReference ctrl+k ctrl+s - workbench.action.openGlobalKeybindings ctrl+k ctrl+shift+w - workbench.action.closeAllGroups ctrl+k ctrl+t - workbench.action.selectTheme ctrl+k ctrl+w - workbench.action.closeAllEditors ctrl+k down - workbench.action.moveActiveEditorGroupDown ctrl+k enter - workbench.action.keepEditor ctrl+k f - workbench.action.closeFolder ctrl+k left - workbench.action.moveActiveEditorGroupLeft ctrl+k m - workbench.action.editor.changeLanguageMode ctrl+k o - workbench.action.files.showOpenedFileInNewWindow ctrl+k p - workbench.action.files.copyPathOfActiveFile ctrl+k r - workbench.action.files.revealActiveFileInWindows ctrl+k right - workbench.action.moveActiveEditorGroupRight ctrl+k s - workbench.action.files.saveAll ctrl+k u - workbench.action.closeUnmodifiedEditors ctrl+k up - workbench.action.moveActiveEditorGroupUp ctrl+k w - workbench.action.closeEditorsInGroup ctrl+k z - workbench.action.toggleZenMode ctrl+n - workbench.action.files.newUntitledFile ctrl+numpad0 - workbench.action.zoomReset ctrl+numpad_add - workbench.action.zoomIn ctrl+numpad_subtract - workbench.action.zoomOut ctrl+o - workbench.action.files.openFile ctrl+p - workbench.action.quickOpen ctrl+p - workbench.action.quickOpenNavigateNextInFilePicker when": "inFilesPicker && inQuickOpen ctrl+pagedown - workbench.action.nextEditor ctrl+pageup - workbench.action.previousEditor ctrl+q - workbench.action.quickOpenNavigateNextInViewPicker when": "inQuickOpen && inViewsPicker ctrl+q - workbench.action.quickOpenView ctrl+r - workbench.action.openRecent ctrl+r - workbench.action.quickOpenNavigateNextInRecentFilesPicker when": "inQuickOpen && inRecentFilesPicker ctrl+s - workbench.action.files.save ctrl+shift+- - workbench.action.zoomOut ctrl+shift+5 - workbench.action.terminal.split when": "terminalFocus ctrl+shift+= - workbench.action.zoomIn ctrl+shift+` - workbench.action.terminal.new ctrl+shift+b - workbench.action.tasks.build ctrl+shift+c - workbench.action.terminal.openNativeConsole when": "!terminalFocus ctrl+shift+e - workbench.action.quickOpenNavigatePreviousInFilePicker when": "inFilesPicker && inQuickOpen ctrl+shift+f - workbench.action.findInFiles ctrl+shift+f5 - workbench.action.debug.restart when": "inDebugMode ctrl+shift+h - workbench.action.replaceInFiles ctrl+shift+j - workbench.action.search.toggleQueryDetails when": "searchViewletVisible ctrl+shift+m - workbench.actions.view.problems ctrl+shift+n - workbench.action.newWindow ctrl+shift+o - workbench.action.gotoSymbol ctrl+shift+p - workbench.action.quickOpenNavigatePreviousInFilePicker when": "inFilesPicker && inQuickOpen ctrl+shift+p - workbench.action.showCommands ctrl+shift+pagedown - workbench.action.moveEditorRightInGroup ctrl+shift+pageup - workbench.action.moveEditorLeftInGroup ctrl+shift+q - workbench.action.quickOpenNavigatePreviousInViewPicker when": "inQuickOpen && inViewsPicker ctrl+shift+r - workbench.action.quickOpenNavigatePreviousInRecentFilesPicker when": "inQuickOpen && inRecentFilesPicker ctrl+shift+s - workbench.action.files.saveAs ctrl+shift+t - workbench.action.reopenClosedEditor ctrl+shift+tab - workbench.action.openPreviousRecentlyUsedEditorInGroup ctrl+shift+tab - workbench.action.quickOpenNavigatePreviousInEditorPicker when": "inEditorsPicker && inQuickOpen ctrl+shift+u - workbench.action.output.toggleOutput ctrl+shift+w - workbench.action.closeWindow ctrl+t - workbench.action.showAllSymbols ctrl+tab - workbench.action.openNextRecentlyUsedEditorInGroup ctrl+tab - workbench.action.quickOpenNavigateNextInEditorPicker when": "inEditorsPicker && inQuickOpen ctrl+v - workbench.action.terminal.paste when": "terminalFocus ctrl+w - workbench.action.closeActiveEditor ctrl+w - workbench.action.closeGroup when": "activeEditorGroupEmpty && multipleEditorGroups ctrl+w - workbench.action.closeWindow when": "!editorIsOpen && !multipleEditorGroups ctrl+win+w - workbench.action.toggleTabsVisibility down - workbench.action.interactivePlayground.arrowDown when": "interactivePlaygroundFocus && !editorTextFocus escape - workbench.action.closeQuickOpen when": "inQuickOpen escape - workbench.action.hideInterfaceOverview when": "interfaceOverviewVisible escape - workbench.action.terminal.clearSelection when": "terminalFocus && terminalTextSelected && !terminalFindWidgetVisible escape - workbench.action.terminal.hideFindWidget when": "terminalFindWidgetVisible && terminalFocus escape escape - workbench.action.exitZenMode when": "inZenMode f1 - workbench.action.showCommands f10 - workbench.action.debug.stepOver when": "inDebugMode f11 - workbench.action.debug.stepInto when": "inDebugMode f11 - workbench.action.toggleFullScreen f5 - workbench.action.debug.continue when": "inDebugMode f5 - workbench.action.debug.start when": "!inDebugMode f6 - workbench.action.debug.pause when": "inDebugMode pagedown - workbench.action.interactivePlayground.pageDown when": "interactivePlaygroundFocus && !editorTextFocus pageup - workbench.action.interactivePlayground.pageUp when": "interactivePlaygroundFocus && !editorTextFocus s - workbench.action.files.save when": "notebookEditorFocused && !inputFocus shift+alt+0 - workbench.action.toggleEditorGroupLayout shift+alt+1 - workbench.action.moveEditorToFirstGroup shift+alt+9 - workbench.action.moveEditorToLastGroup shift+alt+f5 - workbench.action.editor.previousChange when": "editorTextFocus shift+escape - workbench.action.closeQuickOpen when": "inQuickOpen shift+escape - workbench.action.terminal.hideFindWidget when": "terminalFindWidgetVisible && terminalFocus shift+f11 - workbench.action.debug.stepOut when": "inDebugMode shift+f5 - workbench.action.debug.stop when": "inDebugMode shift+pagedown - workbench.action.terminal.scrollDownPage when": "terminalFocus shift+pageup - workbench.action.terminal.scrollUpPage when": "terminalFocus up - workbench.action.interactivePlayground.arrowUp when": "interactivePlaygroundFocus && !editorTextFocus a - notebook.cell.insertCodeCellAboveAndFocusContainer when": "notebookEditorFocused && !inputFocus b - notebook.cell.insertCodeCellBelowAndFocusContainer when": "notebookEditorFocused && !inputFocus c - notebook.cell.copy when": "notebookEditorFocused && !inputFocus ctrl+enter - notebook.cell.executeAndFocusContainer when": "editorTextFocus && inputFocus && notebookEditorFocused || notebookCellListFocused ctrl+shift+- - notebook.cell.split when": "editorTextFocus && inputFocus && notebookEditorFocused d d - notebook.cell.delete when": "notebookEditorFocused && !inputFocus f - notebook.find when": "notebookEditorFocused && !inputFocus l - notebook.cell.toggleLineNumbers when": "notebookEditorFocused && !inputFocus o - notebook.cell.toggleOutputs when": "notebookEditorFocused && !inputFocus shift+enter - notebook.cell.executeAndSelectBelow when": "editorTextFocus && inputFocus && notebookEditorFocused || notebookCellListFocused && notebookCellType == 'code'" } shift+l - notebook.toggleLineNumbers when": "notebookEditorFocused && !inputFocus v - notebook.cell.paste when": "notebookEditorFocused && !inputFocus x - notebook.cell.cut when": "notebookEditorFocused && !inputFocus

edit theme

In VS code 'User Settings', edit visible colours using the following tags(this is a sample and there are much more tags), "workbench.colorCustomizations": { "activityBar.background": "#001000", "activityBar.border": "#FFFFFF", "badge.background": "#81CA91" "editor.background": "#000000", "editor.foreground": "#999999", "editor.selectionBackground": "#602020", "editor.selectionHighlightBackground": "#002000", "editorBracketMatch.border": "#204020", "editorLineNumber.foreground": "#404020", "list.inactiveSelectionBackground": "#C5DEF0", "scrollbarSlider.activeBackground": "#77D4CB", "scrollbarSlider.hoverBackground": "#8CE6DA", "sideBar.background": "#F8F6F6", "sideBar.foreground": "#000000", "sideBarSectionHeader.background": "#CAC9C9", "sideBarSectionHeader.foreground": "#000000", "statusBar.background": "#102F97", }

Workbench

refers to the overall Visual Studio Code UI that encompasses the following UI components: Title Bar Activity Bar Side Bar Panel Editor Group Status Bar